Add a private function to determine if we simulate
authorMatthias Clasen <mclasen@redhat.com>
Fri, 31 Jul 2015 17:30:05 +0000 (13:30 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 31 Jul 2015 17:46:34 +0000 (13:46 -0400)
These same two or three tests are currently duplicated
in several places, with separate static variables. Lets
do this in one place.

gtk/gtkmain.c
gtk/gtkprivate.h

index 6e5188b33759b1310b3ab54906df0b4e10350b2b..56400971c38dde86ce37e0985b24070b86ef8b72 100644 (file)
@@ -811,6 +811,17 @@ gtk_set_debug_flags (guint flags)
   debug_flags = flags;
 }
 
+gboolean
+gtk_simulate_touchscreen (void)
+{
+  static gint test_touchscreen;
+
+  if (test_touchscreen == 0)
+    test_touchscreen = g_getenv ("GTK_TEST_TOUCHSCREEN") != NULL ? 1 : -1;
+
+  return test_touchscreen > 0 || (debug_flags & GTK_DEBUG_TOUCHSCREEN) != 0;
+ }
+
 /**
  * gtk_get_option_group:
  * @open_default_display: whether to open the default display
index 5fe7d88eaee8cab6f3250db422b6e44df9ad058e..9385b8bafd972c34b5fa77c8fc2eac3a6befb2d3 100644 (file)
@@ -95,6 +95,8 @@ gboolean        _gtk_propagate_captured_event  (GtkWidget       *widget,
 void _gtk_load_dll_with_libgtk3_manifest (const char *dllname);
 #endif
 
+gboolean        gtk_simulate_touchscreen (void);
+
 G_END_DECLS
 
 #endif /* __GTK_PRIVATE_H__ */